Lịch sử Phát triển phần mềm linh hoạt

Các phương pháp phát triển phần mềm khác nhau gia tăng từ năm 1957.[1] Phương pháp Phát triển phần mềm linh hoạt được nhiều người chấp nhận, nó có một số nội dung sau:

Bản tuyên ngôn của Phát triển phần mềm linh hoạt

Trong tháng 2 năm 2001, 17 nhà phát triển phần mềm đã gặp nhau ở một khu nghỉ mát tại bang Utah để thảo luận phương pháp phát triển phần mềm. Họ đưa ra Bản tuyên ngôn sau cho Phát triển phần mềm linh hoạt:[2]

  • Cá nhân và sự tương tác hơn là quy trình và các công cụ
  • Phần mềm chạy được hơn là tài liệu đầy đủ
  • Hợp tác với khách hàng hơn là đàm phán dựa theo hợp đồng
  • Đáp ứng với các thay đổi hơn là làm theo kế hoạch đã định

Mặc dù vế thứ hai có vai trò quan trọng, người ta đánh giá vế thứ nhất cao hơn để thành công.

Cá nhân và sự tương tácTự tổ chức và động lực rất quan trọng, cũng như sự tương tác để làm việc cùng vị trí và theo cặp lập trình.Phần mềm có thể chạy đượcPhần mềm chạy được sẽ hữu ích hơn hơn là chỉ trình bày tài liệu cho khách hàng xem ở cuộc họp.Khách hàng hợp tácKhông thể thu thập tất cả yêu cầu của khách hàng vào giai đoạn đầu của chu kỳ phát triển phần mềm, do đó liên tục cộng tác để lấy thông tin từ khách hàng hoặc các bên tham gia là rất quan trọng.Đáp ứng thay đổiPhương pháp Linh hoạt tập trung vào việc phản ứng nhanh chóng với sự thay đổi và không ngừng phát triển.

Các nguyên tắc của Phát triển phần mềm linh hoạt

Phát triển phần mềm linh hoạt dựa trên mười hai nguyên tắc:[3]

  1. Sự hài lòng của khách hàng được đặt lên hàng đầu và liên tục chuyển giao phần mềm có giá trị cho họ
  2. Chào mừng các yêu cầu thay đổi, ngay cả trong giai đoạn muộn của dự án
  3. Phần mềm chạy được, được giao thường xuyên (hàng tuần chứ không nên là hàng tháng)
  4. Người làm bên mảng kinh doanh và người phát triển phần mềm nên gần gũi, hợp tác hàng ngày
  5. Dự án phần mềm được xây dựng bởi các cá nhân có động lực, những người đáng tin cậy
  6. Mặt đối mặt khi nói chuyện là cách tốt nhất để liên lạc (làm việc cùng nơi)
  7. Phần mềm chạy được là thước đo của tiến độ
  8. Phát triển bền vững, có thể duy trì một tốc độ không đổi
  9. Liên tục chú ý đến các kỹ thuật mới và thiết kế tốt
  10. Đơn giản hóa - nghệ thuật của việc tối đa hóa số việc không cần phải làm - là điều cần thiết
  11. Kiến trúc, yêu cầu và thiết kế tốt tạo nên nhóm tự tổ chức tốt
  12. Thường xuyên phản ánh việc làm thế nào để nhóm làm việc hiệu quả hơn và điều chỉnh cho phù hợp

Tài liệu tham khảo

WikiPedia: Phát triển phần mềm linh hoạt http://www.kohl.ca/blog/archives/000166.html http://www.acmqueue.com/modules.php?name=Content&p... http://www.acmqueue.com/modules.php?name=Content&p... http://www.ambysoft.com/books/agileModeling.html http://www.ambysoft.com/essays/whyAgileWorksFeedba... http://software-quality.blogspot.com/2006/10/risk-... http://www.ddj.com/dept/architect/193402902 http://www.informationweek.com/story/showArticle.j... http://agiletoolkit.libsyn.com http://www.methodsandtools.com/archive/archive.php...